One Split Is One Sample

Cross-Validation


교차검증(cross-validation)은 학습·검증 자료를 나누는 과정을 반복해 검증 성능을 요약하는 평가 방법이다. k-fold 교차검증은 자료를 k개 fold(교차검증에서 나눈 한 몫)로 나누고, fold 하나로 검증하며 나머지로 학습하기를 k번 반복해 검증 오차를 평균한다.

CV(k) = (1/k) Σ MSEᵢ크기가 같은 k개 fold에서 잰 검증 MSE의 평균이다.
관측 하나의 쓰임k번의 학습·검증 가운데 검증에 1번, 학습에 k − 1번 쓰인다.
LOOCV관측 하나씩 제외해 n번 반복하는, k = n인 교차검증이다.

fold를 하나씩 검증에 쓰고 k개 검증 MSE를 평균한다

관측 20개를 2차 다항 회귀로 적합한다. k를 바꾸면 fold의 크기와 반복 횟수가 바뀌고, 반복 번호를 옮기면 검증 fold와 그 반복의 검증 MSE, 지금까지의 평균이 바뀐다.

위 줄의 칸 하나가 관측 하나이고 숫자는 관측 번호다. 굵은 세로선이 fold 경계, 초록 칸이 이번 반복의 검증 fold, 파란 칸이 학습 관측이다. 아래 막대는 반복별 검증 MSE이며 초록 막대가 이번 반복, 점선 막대는 아직 하지 않은 반복, 파란 점선은 지금까지의 평균이다.
위 줄의 칸 하나가 관측 하나이고 숫자는 관측 번호다. 굵은 세로선이 fold 경계, 초록 칸이 이번 반복의 검증 fold, 파란 칸이 학습 관측이다. 아래 막대는 반복별 검증 MSE이며 초록 막대가 이번 반복, 점선 막대는 아직 하지 않은 반복, 파란 점선은 지금까지의 평균이다.

평균이 같아도 fold별 점수의 변동은 다르다

두 모델 A와 B를 같은 다섯 fold에서 잰 정확도다. fold 번호를 옮기면 그 fold에서 두 모델의 점수와 차이가 바뀐다.

모델 A와 B의 fold별 정확도행이 모델이고 점 하나가 fold 하나의 정확도다. 점 위 숫자는 fold 번호, 초록 점과 초록 선은 고른 fold에서 두 모델의 점수, 파란 점선은 다섯 fold의 평균이다.
행이 모델이고 점 하나가 fold 하나의 정확도다. 점 위 숫자는 fold 번호, 초록 점과 초록 선은 고른 fold에서 두 모델의 점수, 파란 점선은 다섯 fold의 평균이다.

k와 후보 수가 곱해져 학습 횟수가 늘어난다

관측 200개로 후보 모델을 비교한다고 하자. k와 후보 수를 바꾸면 한 번의 학습에 쓰는 관측 수와 전체 학습 횟수가 바뀐다.

후보 행 하나가 후보 하나이고 칸 하나가 학습 한 번이다. 맨 아래 초록 칸은 후보를 고른 뒤 개발 자료 전체로 한 번 더 학습하는 최종 모델이다.
행 하나가 후보 하나이고 칸 하나가 학습 한 번이다. 맨 아래 초록 칸은 후보를 고른 뒤 개발 자료 전체로 한 번 더 학습하는 최종 모델이다.